package aiP.A3.FertigungKomponente.DataAccessLayer.Entity;

import aiP.A3.PersistenceService.iEntity;

import javax.persistence.Basic;
import javax.persistence.Entity;
import javax.persistence.Id;
import java.math.BigDecimal;

/**
 * Created with IntelliJ IDEA.
 * User: Hero
 * Date: 22.05.14
 * Time: 13:51
 * To change this template use File | Settings | File Templates.
 */
@javax.persistence.Table(name = "AI_ARBEITSPLAN_VORGANG", schema = "AIP", catalog = "")
//@javax.persistence.Table(name = "AI_ARBEITSPLAN_VORGANG", schema = "HR", catalog = "")
@Entity
public class ArbeitsplanVorgang implements iEntity {
    private int vorgangsId;

    @javax.persistence.Column(name = "VORGANGS_ID")
    @Id
    public int getVorgangsId() {
        return vorgangsId;
    }

    public void setVorgangsId(int vorgangsId) {
        this.vorgangsId = vorgangsId;
    }

    private String vorgangsArt;

    @javax.persistence.Column(name = "VORGANGS_ART")
    @Basic
    public String getVorgangsArt() {
        return vorgangsArt;
    }

    public void setVorgangsArt(String vorgangsArt) {
        this.vorgangsArt = vorgangsArt;
    }

    private BigDecimal ruestzeit;

    @javax.persistence.Column(name = "RUESTZEIT")
    @Basic
    public BigDecimal getRuestzeit() {
        return ruestzeit;
    }

    public void setRuestzeit(BigDecimal ruestzeit) {
        this.ruestzeit = ruestzeit;
    }

    private BigDecimal maschinenzeit;

    @javax.persistence.Column(name = "MASCHINENZEIT")
    @Basic
    public BigDecimal getMaschinenzeit() {
        return maschinenzeit;
    }

    public void setMaschinenzeit(BigDecimal maschinenzeit) {
        this.maschinenzeit = maschinenzeit;
    }

    private BigDecimal personenzeit;

    @javax.persistence.Column(name = "PERSONENZEIT")
    @Basic
    public BigDecimal getPersonenzeit() {
        return personenzeit;
    }

    public void setPersonenzeit(BigDecimal personenzeit) {
        this.personenzeit = personenzeit;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        ArbeitsplanVorgang that = (ArbeitsplanVorgang) o;

        if (vorgangsId != that.vorgangsId) return false;
        if (maschinenzeit != null ? !maschinenzeit.equals(that.maschinenzeit) : that.maschinenzeit != null)
            return false;
        if (personenzeit != null ? !personenzeit.equals(that.personenzeit) : that.personenzeit != null) return false;
        if (ruestzeit != null ? !ruestzeit.equals(that.ruestzeit) : that.ruestzeit != null) return false;
        if (vorgangsArt != null ? !vorgangsArt.equals(that.vorgangsArt) : that.vorgangsArt != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = vorgangsId;
        result = 31 * result + (vorgangsArt != null ? vorgangsArt.hashCode() : 0);
        result = 31 * result + (ruestzeit != null ? ruestzeit.hashCode() : 0);
        result = 31 * result + (maschinenzeit != null ? maschinenzeit.hashCode() : 0);
        result = 31 * result + (personenzeit != null ? personenzeit.hashCode() : 0);
        return result;
    }
}
